import os
from colorama import init, Fore, Back, Style

def main(a):
    os.system('cls')
    print("╔═══════════════════════════════════════════════════════╦══════════════════╗")
    print("║                        ПАМЯТЬ                         ║       ЭКРАН      ║")
    print("╠═══════╦═══════════╦═══════════╦═══════════╦═══════════╬═════════╤════════╣")
    print("║ Адрес ║Код.операц.║     А1    ║     А2    ║     А3    ║ Двоичн. │ Десят. ║")
    print("╠═══════╬═══╤═══╤═══╬═══╤═══╤═══╬═══╤═══╤═══╬═══╤═══╤═══╬═════════╪════════╣")
    print("║  000  ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║         │        ║")
    print("╟───────╫───┼───┼───╫───┼───┼───╫───┼───┼───╫───┼───┼───╢         │        ║")
    print("║  001  ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║         │        ║")
    print("╟───────╫───┼───┼───╫───┼───┼───╫───┼───┼───╫───┼───┼───╢         │        ║")
    print("║  010  ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║         │        ║")
    print("╠═══════╬═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╬═════════╧════════╣")
    print("║  011  ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║                  ║")
    print("╟───────╫───┼───┼───╫───┼───┼───╫───┼───┼───╫───┼───┼───╢ Р Е Д А К Т О Р  ║")
    print("║  100  ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║                  ║")
    print("╠═══════╬═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╬═══╪═══╪═══╬══════════════════╣")
    print("║  101  ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ F1 - Запуск      ║")
    print("╟───────╫───┼───┼───╫───┼───┼───╫───┼───┼───╫───┼───┼───╢ F2 - Останов     ║")
    print("║  110  ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ F3 - Запуск/Шаг  ║")
    print("╟───────╫───┼───┼───╫───┼───┼───╫───┼───┼───╫───┼───┼───╢ F4 - Подсказка   ║")
    print("║  111  ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║ 0 │ 0 │ 0 ║                  ║")
    print("╠═══════╩═══╧═══╧═══╩═══╧═══╧═══╬═══╧═══╧═══╩═══╧═══╧═══╩══════════════════╣")
    print("║     Счётчик команд : "+Fore.RED+format(a,'0>3b')+Fore.WHITE+"      ║                                          ║")
    print("╠═══════════════════════════════╩═══════╤══════════════════════════════════╣")
    print("║     Регистр команд : 000 000 000 000  │  0   - десятичное значение       ║")
    print("╠═══════════════════════════════════════╪══════════════════════════════════╣")
    print("║     Регистр сумматора : 000000000000  │  0   - десятичное значение       ║")
    print("╚═══════════════════════════════════════╧══════════════════════════════════╝")
    print("000 [A1]→[A3]           100 [A1]=[A2]:►[A3]")
    print("001 [A1]+[A2]→[A3]      101 [A1]*[A2]→[A3]")
    print("010 [A1]/[A2]→[A3]      110 [A1]>[A2]:►[A3]")
    print("011 [A1]-[A2]→[A3]      111 Вывод и Стоп")
    print("")

os.system('mode con: cols=80 lines=40')

for i in range(8):
    init(autoreset=True)
    main(i)

    #print(Style.BRIGHT + Back.YELLOW + Fore.RED + "CHEESY")
    input()